/*
 * Tablero.h
 *
 *  Created on: 16/10/2013
 *      Author: jaschulz
 */

#ifndef TABLERO_H_
#define TABLERO_H_

#include <vector>
#include "CeldaBase.h"
#include "CeldaVacia.h"
#include "Celda.h"
#include "Pieza.h"
#include "Button.h"
#include "GoldenStar.h"
#include "MiniBar.h"


class Tablero {
public:
		Tablero();
        Tablero(unsigned int nFilas, unsigned int nCols);
        virtual ~Tablero();
        CeldaBase * getCelda(unsigned int x,unsigned int y);
        unsigned int getFilas();
        unsigned int getColumnas();
        void imprimir();
        void setCelda(unsigned int x, unsigned int y, CeldaBase * c);
        void setFilas(unsigned int filas);
        void setColumnas(unsigned int cols);
        std::vector<CeldaBase*>* getCeldas();
        void addCelda(CeldaBase* celda);
        CeldaBase * getCelda(unsigned int nCel);
        bool checkPossibleMatches();
private:
        std::vector<CeldaBase*>* board;
        unsigned int filas;
        unsigned int columnas;
};

#endif /* TABLERO_H_ */
